# -*- coding: utf-8 -*-
class BootStrapForm(object):
    
    # 不应用bootstrap的字段放里面
    bootstrap_class_exclude = []
    
    # 重写初始化方法
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        
        # name:字段的名称，即phone、password...
        # field:forms的字段对象，即forms.CharField()对象
        for name, field in self.fields.items():
            
            # 自定义样式，使得部分字段应用bootstrap的样式
            if name in self.bootstrap_class_exclude:
                continue
            # 这样处理 避免覆盖掉已有的class
            old_class = field.widget.attrs.get('class', '')
            field.widget.attrs['class'] = '{} form-control'.format(old_class)
            
            field.widget.attrs['placeholder'] = '请输入%s' % (field.label,)
